import java.util.*;

public class _2023_10_11 {
    public static void main1(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int i = 0;
        List<String> arr = new ArrayList<>();
        List<Integer> arrLen = new ArrayList<>();
        for(i = 0; i < n; i++){
            String s = sc.next();
            arr.add(s);
            arrLen.add(s.length());
        }
        boolean lenSort = true;
        for(i = 1; i < n; i++){
            if(arrLen.get(i) <= arrLen.get(i - 1)){
                lenSort = false;
                break;
            }
        }

        boolean lexSort = true;
        for(i = 1; i < n; i++){
            if(!check(arr.get(i), arr.get(i - 1))){
                lexSort = false;
                break;
            }
        }

        if(lenSort && lexSort){
            System.out.println("both");
        }else if(!lenSort && lexSort){
            System.out.println("lexicographically");
        }else if(lenSort && !lexSort){
            System.out.println("lengths");
        }else{
            System.out.println("none");
        }
    }

    //如果s1的字典序大于s2,则返回true
    private static boolean check(String s1, String s2){
        char[] c1 = s1.toCharArray();
        char[] c2 = s2.toCharArray();
        int n = Math.min(s1.length(), s2.length());
        for(int i = 0; i < n; i++){
            if(c1[i] > c2[i]){
                return true;
            }
            if(c1[i] < c2[i]){
                return false;
            }
        }
        if(s1.length() > s2.length()){
            return true;
        }else {
            return false;
        }
    }

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int a = sc.nextInt();
        int b = sc.nextInt();
        long sum = a * b;
        while(b != 0){
            int tmp = a % b;
            a = b;
            b = tmp;
        }
        System.out.println(sum / a);
    }
}
